package com.sqlcheck.service;

import com.sqlcheck.model.SqlStatement;

import java.nio.file.Path;
import java.util.List;

public interface MybatisXmlAnalysisService {

    /**
     * 分析MyBatis XML文件，提取SQL语句
     * 
     * @param xmlFilePath XML文件路径
     * @return SQL语句列表
     */
    List<SqlStatement> analyzeXmlFile(Path xmlFilePath);

    /**
     * 分析整个目录下的MyBatis XML文件
     * 
     * @param directoryPath 目录路径
     * @return SQL语句列表
     */
    List<SqlStatement> analyzeXmlDirectory(Path directoryPath);

    /**
     * 检查文件是否为MyBatis XML文件
     * 
     * @param xmlFilePath XML文件路径
     * @return 是否为MyBatis XML文件
     */
    boolean isMybatisXmlFile(Path xmlFilePath);
}